#ifndef Torus_h
#define Torus_h

#include <float.h>
#include "LocalObject.h"
#include "LocalObject.h"
#include "Box.h"
#include "external/polynomial.h"

class Torus : public LocalObject
{
private:
	Point location;
	double bigRadius;
	double smallRadius;
	Box boundingBox;
	
public:
	Torus(const Point &, const double &, const double&, const double &, const double&);
	bool intersection(Ray&, Intersection&) const;
	Vector getNormal (const Point&) const;
};

#endif
